#pragma warning disable 108
using System;
using System.Runtime.InteropServices;
using System.Collections.Generic;
using Cephei;
using Cephei.Core;
using Cephei.Core.Generic;
using Microsoft.FSharp.Core;
namespace Cephei.QL.Instruments
{
    /// <summary> 
	/// ASC091127 Moved price from being a sub-class so that it can be instantiated directly ! amount to be paid upon callability
	/// </summary>
    [Guid ("E0C8818A-234F-40e7-8409-B1CB40E26E04"),ComVisible(true)]
	public interface ICallabilityPrice 
	{
		///////////////////////////////////////////////////////////////
        // Methods
        //
        /// <summary> 
		/// 
		/// </summary>
		 Double Amount {get;}
        /// <summary> 
		/// 
		/// </summary>
		 QL.Instruments.CallabilityPrice.TypeEnum Type {get;}
    }   

    /// <summary> 
	/// ASC091127 Moved price from being a sub-class so that it can be instantiated directly ! amount to be paid upon callability Factory
	/// </summary>
   	[ComVisible(true)]
    public interface ICallabilityPrice_Factory 
    {
        ///////////////////////////////////////////////////////////////
        // Factory methods
        //
        /// <summary> 
		/// 
		/// </summary>
	    ICallabilityPrice Create (Double amount, QL.Instruments.CallabilityPrice.TypeEnum type);
        /// <summary> 
		/// 
		/// </summary>
	    ICallabilityPrice Create ();
    }
}

